
package requests

import (
	"github.com/goravel/framework/contracts/http"
	"github.com/goravel/framework/contracts/validation"
)

type SystemAttachmentRequest struct {

	AttId string `json:"att_id" form:"att_id"`

	Name string `json:"name" form:"name"`

	AttDir string `json:"att_dir" form:"att_dir"`

	SattDir string `json:"satt_dir" form:"satt_dir"`

	AttSize string `json:"att_size" form:"att_size"`

	AttType string `json:"att_type" form:"att_type"`

	Pid string `json:"pid" form:"pid"`

	Time string `json:"time" form:"time"`

	ImageType string `json:"image_type" form:"image_type"`

	ModuleType string `json:"module_type" form:"module_type"`

	RealName string `json:"real_name" form:"real_name"`

	ScanToken string `json:"scan_token" form:"scan_token"`

}

func (r *SystemAttachmentRequest) Authorize(ctx http.Context) error {
	return nil
}

func (r *SystemAttachmentRequest) Rules(ctx http.Context) map[string]string {
	return map[string]string{

		"att_id": "required",

		"name": "required",

		"att_dir": "required",

		"satt_dir": "required",

		"att_size": "required",

		"att_type": "required",

		"pid": "required",

		"time": "required",

		"image_type": "required",

		"module_type": "required",

		"real_name": "required",

		"scan_token": "required",

	}
}

func (r *SystemAttachmentRequest) Messages(ctx http.Context) map[string]string {
	return map[string]string{}
}

func (r *SystemAttachmentRequest) Attributes(ctx http.Context) map[string]string {
	return map[string]string{}
}

func (r *SystemAttachmentRequest) PrepareForValidation(ctx http.Context, data validation.Data) error {
	return nil
}
